home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Just Call Me Internet
/
Just Call Me Internet.iso
/
prog
/
atari
/
c
/
zmdm
/
mail
< prev
next >
Wrap
Internet Message Format
|
1993-06-26
|
2KB
Date: 20-Jul-87 21:51 EDT
From: Chuck Forsberg [70007,2304]
Subj: ZMODEM BUG
A bug has been discovered in the ZMODEM protocol description and
in the "rzfile" routine in rz.c. This affects Omen software previous
to 7-20-87 and probabaly other ZMODEM programs as well.
When the reciever detects a CRC error near the end of a file, it
sends a ZRPOS frame to the sender. If, in the meantime, the
sender has sent a ZEOF frame, the receiver will reject the ZEOF because
it has an incorrect offset, and two ZRPOS frames will have been
sent for one error. This may trigger a race condition that aborts
the transfer.
Repeat by: Send some files from a 386 PC-AT at 19200 bps to an AT or
CLONE with reception to an extended memory ramdisk. The firmware
supporting the extended memory ramdisk causes lost interrupts at
19200 bps, so an error is induced each time the receiver writes to
disk while data is streaming in. Under these conditions, most frames
must be retransmitted. At the end of the file, the error count
suddenly starts to increase until the transfer fails. This syndrome
may manifest itself under other conditions, but infrequently.
Correction: in the "rzfile" function, an ZEOF with an incorrect address
should be ignored.
if (rclhdr(Rxhdr) != rxbytes) {
/*
* Ignore eof if it's at wrong place - force
* a timeout because the eof might have gone
* out before we sent our zrpos.
*/
errors = 0; goto nxthdr;
}
--- Uploaded Mon Jul 20 18:46:53 1987